package com.qingzhi.spring.demo.controller;


import jakarta.servlet.http.HttpSession;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;


@RequestMapping("/user2")
@RestController
public class UserController2 {

    @RequestMapping("/login")
    public Boolean login(String userName, String password, HttpSession session) {
        // 还没有学到数据库，所以我们呢使用一个固定的 登录账号和密码

        // 先对其参数进行判断看是否复合要求
        // StringUtils这个是一个对于String的一个工具类
        if (!StringUtils.hasText(userName) || !StringUtils.hasText(password)) {
            // 这里说明是 userName或者是password是空，返回false在对其进行!，取反
            //登录失败
            return false;
        }
        // 判断输入的值和我们固定的一个值是否相等
        if ("zhangsan".equals(userName) && "123456".equals(password)) {
            //这里要把定量放在前面，如果是变量如果出现null的话，就会导致这里报错，但是如果是定量那么就不会报错即使出现null

            //密码和账号正确，那么我们就需要对其进行保存，保存在服务器，我们使用session
            session.setAttribute("userName","zhangsan");
            session.setAttribute("password","123456");
            return true;
        }

        return false;
    }

    @RequestMapping("/getLoginUser")
    public String getLoginUser(HttpSession session) {
        String userName = (String) session.getAttribute("userName");
        return userName;
    }
}
